/*-----------------
    图片滚动功能
------------------*/ 
define(function(require,exports,module){
	var $ = require("$");
	/*-----------------------------------------定义图片滚动类-------------------------------------------------------*/
	function ImgScroll(obj,imgMargin,padding){
		this.imgMargin = imgMargin;//图片外边距
		this.obj = obj;//滚动图片容器对象
		this.padding = padding;
	}
	
	module.exports = ImgScroll;//对外提供的接口
	/*-----------------------------------------为类定义函数-------------------------------------------------------*/
	//图片左右移动一次
	ImgScroll.prototype.move=function(direction){//direction定义方向
		var margin;
		var padding;
		var obj = this.obj;
		if(typeof this.imgMargin == "undefined" ){
			margin=0;
		}else{
			margin = this.imgMargin;
		}
		if(typeof this.padding == "undefined" ){
			padding=0;
		}else{
			padding = this.padding;
		}
		
		var $imgList = $(obj).find("ul:first");//定位图片列表
		var imgWidth = $imgList.find("li:first").width();//每个图片的宽
		
		if(direction === "right"){//点击”右侧箭头“显示下一个图片
			$imgList.animate({"marginLeft":-(imgWidth+margin+padding)+"px"},500,function(){
				$imgList.css({marginLeft:0}).find("li:first").appendTo($imgList);
			});
		}else if(direction === "left"){//点击”左侧箭头“显示上一个图片
			$imgList.css({marginLeft:-(imgWidth+margin+padding)+"px"}).find("li:last").prependTo($imgList);
			$imgList.animate({"marginLeft":"0px"},500);
		}
	}
	
	//图片每3秒钟滚动一个图片
	ImgScroll.prototype.slide = function(){
		var margin = this.imgMargin;
		var obj = this.obj;
		var that = this;
		
		var scrollTimer;//时间戳
		var $next = $(obj).find(".next");//右移按钮
		var $pre = $(obj).find(".pre");//左移按钮
		
		//图片自动滚动
		$(obj).hover(function(){//鼠标放在图片区域停止滚动
			clearInterval(scrollTimer);
		},function(){//鼠标离开图片区域图片每3秒钟滚动一个图片
			scrollTimer = setInterval(function(){
				that.move("right");
			},3000);
		}).trigger("mouseout");//默认激发鼠标离开事件
		
		//上一个
		$pre.click(function(){
			that.move("left");
		});
		
		//下一个
		$next.click(function(){
			that.move("right");
		});
	}	
});